Webdominant Bilgi Paylaşım Kanalıdır.

PayLaşıLmayan BiLgi BiLgi DeğiLdir.

Webdominant | Paylaşmak özgürlüktür.

XML Dersi

XmL’in Tanıtımı
( XML’i okuğum şekil ; İGZEMEL buna göre okuyun)

Xml’in neden kullanıldığına dair tatmin edici bir açıklama ,istiyorsanız,Dan Wellman size söyleyebilir.O size biraz arkaplandan bahseder,kolay kullanımı ile ilgili birkaç detay ve Xml in kalitesini göstermek için temel örnekler verir.

XmL’i belki duymuş,beklide duymamışsınızdır.Ama bu yazıyı okuyuncaya kadar muhtemelen siz en az bir amatör/hırslı bir web yaratıcısınızdır ve Xml muhtemelen en yeni ve büyüleyici bir araçtır.Yani eğer adını hiç duymadıysanız bu utanç verici
Extensible Markup Language anlamına gelen XmL ilkte 1996 kadar erken düşünülmesine rağmen şubat 1998’de W3C’nin mütevazi bir teklifi olarak hayata başladı.Şirket gazetelerine göre zamanın “ Web Teknolojisinde Anahtar Teknik Dehaları” olarak adlandırılanSun,Microsoft,Hp ve Netscape gibi isimler diğerlerini içinde barındıran W3C çalışan grubu tarafından icat edildi.

XmL,büyüyen HTML sınırlamasına cevap olarak ve genel standartlarda veri paylaşımını ve internet tasarımcılığını tanıtmak için bir bakıma zorla var edildi.Ayrıca XmL,veri tabanını,Htm nin netteki bilgileri(Söylenen bilgilerin yapı ve şekli hariç)sunması için tasarlanan formatından ayırmak için yaratılmıştır çünkü XmL sadece tabaqn için uydurulmuştur ve veri sunması için düzenlenmiştir.HTML ve XmL, web yaratımının ying yangı olarak kolayca tanımlanabilir.

XmL in yaratıcılarını bir araya getiren 10 orijinal amaç

1.XmL in net üzerinden kullanımı kolay olmalı
2.Geniş çaplı uygulamaları destekleyebilmeli.
3.SGML ile uyum sağlayabilmeli(standart genel yapı dili)
4.XmL dökümanları yoluyla uygulama yazmak kolay olmalı
5.İstenilen özelliklerin sayısı kesin bir miktarda tutulmalı
6.Xml bilgileri adam gibi okunur olmalı
7.resmi ve kısa olmalı
8.XmL bilgileri kolayca yaratılabilmeli
9.Kodlu kısayollar varsa azıltılmalı
10.Güncelleştirme çabucak hazırlanmalı

XmL kullanmış biri,bu hedeflerin büyük çapta gerçekleştiğini bunlarla bilecek ; Net üzerinden kolay kullanımı var olan internet protokolünü kullanarak garanti altına alınmıştır.Büyük çaplı uygulamaları destekleyebilecek, örneğin ; net üzerinden bağımsız olarak kullanılan veri tabanı oluşturma ve yazılım işlemleri artık XmL ile yapılabilecek.SGML’ye uyumlu olmasına ek olarak,basitletilmiş bir verisyonu yaratılmıştır.Yaratıcıların dediklerine göre,tipik bir kolej öğrencesi iki hafta içerisinde XmL programı yazabilecek ve bu da kesin olarak XmL in yazılımının kolay olmasının amacıyla uyuşmaktadır.

Kişisel özellikler,bilgiler ve uygulamalar arasındaki uyumu korumak için en aza indirilmiştir.HTML,eğer birazcık sil bilginiz varsa,okuması ve anlaması yeterince kolaydır.XML inde okunup yorumlanması bu 10 faktörle kolaylaştırılmıştır.Hiç tecrübesi olmayan biri bile rahatça açıp neler olup bittiğini öğrenebilir.Bu demektirki,yazı editörleri netten yada ilgili araçlardan faydalanarak yerine XmL i kullanılabilecek.

Xml’in resmiliğni korumak için ayrıntılar,program dilini işaretler yoluyla anlatan Extended Backusnaur Format ile uyumlu yazılmıştır.Xml belgelerini yaratmak kolaydır : NotePad gibi kolay yazı programını kullanabilirsiniz ve XmL işaret dizini düz bir ASC2 text gerektirir.SGML deki gibi kodlu kısayollar yoktur.Xml aslında çok hızlı üretilmiştir : kişisel şirketleri ve organizasyonları(kendi özel dil standartını yaratan) korumak için gerekliydi.Eğer bu amaç olmasaydı,biz şimdi şüphesiz Java Virtual Machine/Microsoft MAchine ile sun ve Microsoft arasındaki Savaş’a benzeyen olaylara masum seyirci olarak kalırdık.

Şimdiye kadar Xml in arka planıyla ilgili biraz bilginiz olmuştur.Geriye kalan tek gerçek soru,neden onu kullanmalıyım?Başlangıç olarak öğrenmesi son derece kolay özelleme yaparsak son derece küçük bu da taşınabilir ve çok hızlı anlamına gelir.HTML nin yeni veri sunmasıyla beraber bir çeşit bilgi saklama yeri olarakta kullanılabilir.Buda sizin sitenizin gelişimini kolaylaştırır ; depo edilmiş bilgileri geliştirebiliriz ve bu değişikler web sayfanıza hızlı biçimde yansır.

XmL,html nin ayrıntılarını destekler,ayrıca kendisinin daha güçlü ayrıntılarını da içerir,XLİNK ve XPointer adlarıyla bilinir.Benzer olarak CSS stilinş kullanarak elde edilebilir,yada kendi stiliyle kendiliğinden gelir(XSL-extensible style language ve XSLT-extensible style language tasarımcılığı)

Muhtemelen kullanımının en iyi sebebi,temel olarak yeni kullanım dili yaratmak için kullanmak anlamına gelen Meta-Markup dili olması.Bu özelliğin gücü tahmin edilemez ve neredeyse sınırsız dil uygulamaları sağlar.İkna oldunuzmu?güzel

XmL belgelerinin 2 çeşidi

Kendi XmL belgelerimiz yaratmadan önce,bir noktaya daha değinmek gerekir.İki çeşit XmL belgesi vardır ; doğru belgeler ve iyi düzenlenmiş belgeler.Her Xml belgesi iyi düzenlenmek ister ama her belge doğru olmak zorunda değildir.Bu konuyu genişletirsek ; iyi düzenlenmiş bir belge belli bir rakam düzeni ve Xml kuralları içermesi gerekir,aksi taktirde çalışmaz.Ama geçerli ve doğru olması için ya Document Type Definition(DTD)yada ikili bir karışım içermek zorundadır.Gelecek tavsiye için dahili bir DTD nin örneği harici bir DTD üzerinde kurulmalıdır.Eğer DTD nin ne demek olduğunu bilmiyorsanız endişelenmeyin kısaca açıklayacam.

Bir noktayla değinirsek,XML, HTML den daha dikkatlidir ve tasarım amacına uymak ister.Birşey daha her sarkık ucun başarıyla beraber bir sonu olması gerekir.Dilerseniz XmL ile biçimlemeden ayırma yöntemine temel örneklerle devam edelim.Bu örnekte başlıkları ve ilgili haberleri saklaması için XmL i ve bunları bize sunması için HTML sayfasını kullanıcağız. Zaman geçtikçe Xml araçları artarak marketlerde görülmeye başlıyor.Eğer oturup öğrenmek için ve XmL in kendisinin nasıl kullanıldığını anlamak için zamanınız varsa,bu olay çok iyi ve güzel.Bu yazımın amacı ben her şeyi sade notepad kullanarak yarattım, sizinde bu yazı sayesinde daha yakın olacağınız düşünerekten aynısını yapmanızı tavsiye ederim.

Notepad’i açın boş sayfaya altta belirtilen kodu yazın.

<?xml version="1.0" standalone="yes"?>

Bu XmL in bilinen bildirisi ve tüm XmL belgelerinin iyi düzenlenmiş yada doğru olup olmadığını anlatan satırdır.Küçük harflerle yazılı olması gerekir.Bu bölüm niteliğinde 1.0daki belgeler kadar dikkat gerek değildir.Ama yinede iyi bir pratik yapma imkanı içerir.

Buna ek olarak,bazı diğer kişisel yöntemlerde kullanılabilir mesela UTF-8 ve stand-alone dağılımı gibi karakter kodlama yolu.Bu örnekte DTD yaratacağız(kullanmamıza rağmen).Ek olarak,eğer özellikleri şifrelemeye karar verdiyseniz,önce seri özelliklerini çözmeniz gerekir.

Haber dizini yaratmak için,haber başlıklarını depolamak için bir yere ve asıl haberleri saklamak için bir yere ihtiyacımız var.Xml belgeleri , elementleri sıkıştırmak için 3 aşama içerir.İlk yada belge elementi diğer bütün elementleri içinde bulundurur ve ana element olarak bilinir.Bölgelerdeki elementlerin mantıklı emir talimatları DTD nin içinde tanımlanır ve bağlanması gerekir.DTD harici yada DTD dosyasını tanıtan yada dahili olanın yoluna …(çeviri yok).Eğer harici DTD yi tanıtmak istiyorsak,belgelerin bir sonraki düzene uyması gerekir.

<!DOCTYPE News SYSTEM "my.dtd">

Bu yol kullanıcıya DTD nin adını ve yerini bildirir.Ama bizim DTD(belge tipi niteliği)miz dahili olduğu için bir sonraki yolu kullanacağız.

<!DOCTYPE News [
Bu yazı DTD ye haber adını verecek.”Sistem” niteliği yerine açık bir köşeli ayraç kullanın.(DTD nin sonunda kapatacağız).Şimdi ise elementleri görünmeleri için (belgelerimizde çıkan) adlandırcaz.

<!ELEMENT News (article)>

Bu yazı haberleri , haberleri ana element olarak tanımlar ; bu element diğer bütün elementlere taşımacılık görevi yapacak.Ana elementi adlandırdıktan sonra ayraçtaki diğer çocuk elementlerini adlandırıcaksınız.Bu durumda haber elementini adlandıracağız.

<!ELEMENT Article (Headline+, story+)>

Tekrar bu elementimizin 2 tane çocuk element içerdiğini anlatıyor.Başlık ve hikaye her biri yada daha fazla gözükmesi gerekir.Elementlerimizn adlandırıldığında belgelerimizde aynı anda gözükmesi gerekir.Virgül,onların muhakkak gözükmesi gerektiğini anlatır.Eğer virgülü düz çizgiyle çektirseydik,buda ikisinden birinin gözükebileceğini anlatırdı ama ikisinin birden değil.Şimdi başlığı ve hikayeyi tanımlamalıyız.

<!ELEMENT Headline (#PCDATA)>
<!ELEMENT Story (#PCDATA)>

#PCDATA elementlerin isimlendirilmiş karakter verisi içermesi demektir,buda bu elementlerin içinde bulundurduğu tüm paragrafı isimlendirir ve bu yüzden diğer şekilli karakterleri içermez.(açık parantez ] falan gibi).Eğer işaretlendirmek istiyorsanız elementlerinizi,elementleri #CDATA diğe tanımlamanız gerekir.
DTD lerde bazen çıkabilen diğer durumları göstermek için sıfatları tanımlayacağız.Sıfatlar elementler hakkındaki bilgileri elementlerin birer parçası yapmadan saklamaya yarar.Yazı elementimize tek bir numara vereceğiz bu numara sıfatları kullanıcak.Bu örnekte kullanmıcaz ama genel olarak onlar çok yararlı olabiliyor ve çoğunlukta kullanılıyor.

<!ATTLIST Article ArticleNumber ID #REQUIRED>

Bu article number’ı article elementinin bir sıfatı olarak ID tipiyle beraber ayarlayacak.#REQUİRED onun zorunlu olduğunu gösterir.Eğer sıfatınızın sabit olmasını istiyorsanız,yazının sonuna #IMPLİED eklemeniz gerekir.
Bu bizim DTD mizin içerdiği tüm ihitiyacımız olan şey.Daha sonralı birçok anahtar sözcük kullanacaksınız ve DTD lerde kullanabileceksiniz.DTD nin sonuna kapalı bir parantez ve kapalı açı üçgeni koyun]>
Şimdi,XML dosyanıza bir çift haber yaratmaya hazırsınız.Sıradaki kodları ekleyin.

</article>
</article ArticleNumber="002">
<headline>Microsoft Announce New Super-Stable OS</headline>
<story>Bill Gates yesterday announced the next realease of the popular Windows operating system will be the "most stable yet". Extensive User Testing has been successful so far, with only 765489652554, hang-ups, freezes or crashes on the prototype OS since testing began yesterday.</story> </article>
</news>

XML dosyanıza istediğiniz kadar yazı ekleyebilirsiniz,herhangi bir sınırlama yada yasaklama yoktur.Bütün dosyalar şimdi böyle gözükmeli.

<?xml version="1.0" standalone="yes"?>
<!DOCTYPE News [
<!ELEMENT News (article)>
<!ELEMENT Article (Headline+, story+)>
<!ELEMENT Headline (#PCDATA)>
<!ELEMENT Story (#PCDATA)>
<!ATTLIST Article ArticleNumber ID #REQUIRED>
]>
<news>
<article ArticleNumber="001">
<headline></headline>
<story></story>
</article>
<article ArticleNumber="002">
<headline></headline>
<story></story>
</article>
</news>

Test Aşaması

Dosyayı “news.xml” olarak kaydedin bu işlemleri yaptıktan sonra dosyanızın sitede nasıl göründüğün görebilirsiniz.Ben internet Explorer 5.5 kullandım(XmL parseri olan) eğer siz başka bir şey kullanıyorsanız,onun XmL i desteklediğinden emin olmanız gerekir.Belgeler browser’a yüklendikten sonra,en tepede XmL yazıtınız göreceksiniz.Bu da DTD nin ilk satırını takip edip,orda hbaer yazılarınıza dönüyor bu da çalıştığı anlamına gelir.

Şimdi bu bilgiyi kullanmamıza yardımcı olan ve bize daha iyi bir yol sunan bir HTML yaratmamız gerek.XmL veri kaynaklarını okuyabilmenin birçok yolu var bir çoğuda Java Script içeriyor.En kolay yol sadece Html kullanılarak elde edilebilir.Ama bu çalışmada,çalıştırmak için zaman harcadığınız DTD’yi silmeniz gerekir.DTD ler XmL in harici parçasıdır bu yüzden size nasıl bir tane yaratmayı göstermek için seçtim.News.xml’yi notepad yardımıyla tekrar açın ve DTD yi silin <!DOCTYPE to ]> daki her şeyi ve news2.xml olarak kaydedin.Bu dosyayı hala browser da görebilirsiniz ve o dosya hala iyi düzenlenmiş olarak nitelenmiştir.

Şimdi notepad’e geri dönün yeni bir dosya açın ve HTML işaretleri ile içini doldurun.

<HTML>
<HEAD>
</HEAD>
<BODY>
</BODY>
</HTML>

Bu bölümde 2 aşama var.Önce html sayfasını XmL dosyasındaki bilgilere okutmak,sonrada XmL den alınan dosyaları formatlayarak ele almak.Bilgi <xml> yazısını belgenin ortasına yazarak okunabilir.
<xml id="news" src= "news2">Bu XmL dosyasını okuyacak.Ele almak için aşağıda belirteni yapmak gerekir.Bu yazıyı <xml> in hemen altına yazın.

<table border="0" datasrc= "">
<tr>
<td><span datafld="headline"></span></td>
</tr>
<tr>
<td><span datafld="story"></span></td>
</tr>
</table>

Şimdi bu dosyayı news.htm diye kaydederek browser’dan açın.Sihirmiş gibi,iki başlığınız ve ilgili haberleriniz,hikayeleriniz sayfada görünecek.Bu başlık ve hikayeden istediğiniz kadar HTML’yi modifiye etmeden yazabilirsiniz.Onlar table’da belli sırayla çıkcaklar.Buna XmL islands denir(xml adaları),ayrı dosyalarda kullanılabilir.Bence ayrı dosyalar kullanmak daha iyi çünkü dosyayı kullandığınızda ve formatladığınızda zorluk çekebilirsiniz.

Sonuç

Html’nin üzerinde,CSS eklerken yada şekillerle adlandırılırken <b>, <I> yada <font> yazıyı kontrol etmek için,kontrol sahibi oldunuz.Bunu Javascript ile dahadaq ilerletebilirsiniz.Ama sınırsız kontrol için,XSL yada Extensible StyleSheet Language kullanmanız lazım onunda kendi içinde konuları var.Umarım bu örnekler XMLNin gücünü ve kullanışlığınız ispatlamıştır.Bu anlatılan dil,Internetin geleceği olcaktır.


Copyright © 2009 wptr - Tema Bizi ziyaret ettiğiniz için teşekkür ederiz.

Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol